## list排序

print('-----------------sort()内置函数排序，不会产生一个新的列表-----------------------')
lst1 = [3, 4, 2, 1, 6, 8, 2]
print('初始列表：', lst1, id(lst1))

# sort() 升序排序函数
lst1.sort()
print('使用sort() 升序排序后的列表：', lst1, id(lst1))

# 如何降序排列呢？ sort(reverse=True)； .sort(reverse=False) 降序
lst1.sort(reverse=True)
print('降序排列：', lst1, id(lst1))

lst5 = []
lst5.append({'name':'小明', 'sorce': 45})
lst5.append({'name':'小红', 'sorce': 60})
lst5.append({'name':'小蓝', 'sorce': 85})
#根据sorce分数排序
lst5.sort(key=lambda x: x['sorce'], reverse=True)
print('降序：', lst5)
lst5.sort(key=lambda x: x['sorce'], reverse=False)
print('升序：',lst5)


print('-----------------sorted()内置函数排序，会产生一个新的列表-----------------------')
lst2 = [3, 4, 2, 1, 6, 8, 2]
print('初始列表：', lst2, id(lst2))
# sorted() 升序排列
newLst2 = sorted(lst2)
print('产生了一个新的列表',newLst2, id(newLst2), id(lst2))

# sorted(要排序的列表, reverse=True) 降序排列；  reverse=False 就是升序排列
newLst21 = sorted(lst2, reverse=True)
print(newLst21)

lst7 = []
lst7.append({'name':'小明', 'sorce': 45})
lst7.append({'name':'小红', 'sorce': 60})
lst7.append({'name':'小蓝', 'sorce': 85})
print(sorted(lst7, key=lambda x: x['sorce'], reverse=True))
print(sorted(lst7, key=lambda x: x['sorce'], reverse=False))